/**********************************************************************************************/
// dgt_LogElement.h
// Interface of logical element
// 
// Copyright Diamant Group 2007
/**********************************************************************************************/
#ifndef _DGT_LOGELEMENT_H_
#define _DGT_LOGELEMENT_H_

#include "dgtKernel.h"
#include "dgt_SmartMacros.h"
#include "dgt_Element.h"

SMART_CLASS( dgt_LogElement );

/**********************************************************************************************/
interface dgt_LogElement: public dgt_Element
{
							dgt_LogElement( void )		{};

virtual						~dgt_LogElement( void )		{};

		// Mnemonic operation
virtual	wxString			get_Mnemonic( void ) = 0;
		// Number of elemnets in one schema
virtual unsigned long		get_BlockCount( void ) = 0;
		// Number of inputs of element
virtual	unsigned long		get_InputCount( void ) = 0;					
		// Function table of element
virtual	wxArrayShort		get_Table( void ) = 0;						

};

#endif	// _DGT_LOGELEMENT_H_

